package com.member.shop.dto;

import lombok.Data;

import javax.annotation.MatchesPattern;
import javax.validation.constraints.NotBlank;
import java.util.regex.Pattern;

/**
 * @author wangxin
 * @version 1.0
 * @date 2024/7/11 下午7:36
 **/
@Data
public class AuthenticationDto {

    /**
     * 姓名
     */
    @NotBlank(message = "姓名不能为空")
    private String name;

    /**
     * 身份证号
     */
    @NotBlank(message = "身份证号不能为空")
    private String idCard;

    /**
     * 银行卡号
     */
    @NotBlank(message = "银行卡号不能为空")
    @MatchesPattern(value = "^[0-9]{12,19}$")
    private String bankNumber;

    public boolean validate() {
        // 定义银行卡号的正则表达式
        String regex = "^[0-9]{12,19}$";

        // 创建Pattern对象
        Pattern pattern = Pattern.compile(regex);

        // 使用Pattern对象匹配银行卡号
        boolean isMatch = pattern.matcher(bankNumber).matches();

        return isMatch;
    }

}
